package com.ruoyi.make.domain;

import java.util.List;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 生产订单对象 scdd_production_order_form
 * 
 * @author ruoyi
 * @date 2024-06-20
 */
@Data
public class ScddProductionOrderForm extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 生产订单编码 */
    private String ddCode;

    /** 订单优先级 */
    @Excel(name = "订单优先级")
    private Long ddLevel;

    /** 订单状态 */
    @Excel(name = "订单状态")
    private Long ddStatus;

    /** 订单类型编码 */
    @Excel(name = "订单类型编码")
    private String ddTypecode;

    /** 订单性质编码 */
    @Excel(name = "订单性质编码")
    private String ddGoodcode;

    /** 客商编码 */
    @Excel(name = "客商编码")
    private String ksCode;

    /** 合同编号 */
    @Excel(name = "合同编号")
    private String htCode;

    /** 产品编码 */
    @Excel(name = "产品编码")
    private String cpCode;

    /** 订单数量 */
    @Excel(name = "订单数量")
    private Long ddNum;

    /** 交货日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "交货日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date jhDate;

    /** 计划开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTime;

    /** 计划完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date finishTime;

    /** 备注 */
    @Excel(name = "备注")
    private String other;

    /** 是否启用 */
    @Excel(name = "是否启用")
    private Long isUse;

    /** 是否删除 */
    @Excel(name = "是否删除")
    private Long isDelete;

    /** 创建人 */
    @Excel(name = "创建人")
    private String scddCreate;

    /** 客商信息 */
    private KsMerchants ksMerchant;

    /**产品信息*/
    private CpProduct cpProduct;


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("ddCode", getDdCode())
            .append("ddLevel", getDdLevel())
            .append("ddStatus", getDdStatus())
            .append("ddTypecode", getDdTypecode())
            .append("ddGoodcode", getDdGoodcode())
            .append("ksCode", getKsCode())
            .append("htCode", getHtCode())
            .append("cpCode", getCpCode())
            .append("ddNum", getDdNum())
            .append("jhDate", getJhDate())
            .append("startTime", getStartTime())
            .append("finishTime", getFinishTime())
            .append("other", getOther())
            .append("isUse", getIsUse())
            .append("isDelete", getIsDelete())
            .append("scddCreate", getScddCreate())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("ksMerchantsList", getKsMerchant())
            .toString();
    }
}
